package com.hui.admin.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hui.admin.dto.request.CategoryPageRequestDTO;
import com.hui.admin.dto.request.CategorySaveRequestDTO;
import com.hui.admin.dto.response.CategoryPageResponseDTO;
import com.hui.admin.entity.CategoryDO;

/**
 * 文章分类服务接口
 */
public interface CategoryService extends IService<CategoryDO> {
    /**
     * 获取文章分类列表
     *
     * @param requestDTO 请求参数
     * @return 文章分类列表
     */
    CategoryPageResponseDTO getCategoryList(CategoryPageRequestDTO requestDTO);

    /**
     * 新增文章分类
     *
     * @param requestDTO 请求参数
     */
    void createCategory(CategorySaveRequestDTO requestDTO);

    /**
     * 删除文章分类
     *
     * @param id ID
     */
    void deleteCategory(Long id);

    /**
     * 批量删除分类
     *
     * @param ids IDS
     */
    void deleteArticles(Long[] ids);

    /**
     * 修改文章分裂
     *
     * @param requestDTO 请求参数
     */
    void updateCategory(CategorySaveRequestDTO requestDTO);
}
